<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>OpenShoe: udc_desc.h Source File</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">OpenShoe
   &#160;<span id="projectnumber">0.1</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<div class="header">
  <div class="headertitle">
<div class="title">udc_desc.h</div>  </div>
</div>
<div class="contents">
<a href="udc__desc_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 
<a name="l00039"></a>00039 <span class="preprocessor">#ifndef _UDC_DESC_H_</span>
<a name="l00040"></a>00040 <span class="preprocessor"></span><span class="preprocessor">#define _UDC_DESC_H_</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span>
<a name="l00042"></a>00042 <span class="preprocessor">#include &quot;<a class="code" href="conf__usb_8h.html" title="USB configuration file for CDC application.">conf_usb.h</a>&quot;</span>
<a name="l00043"></a>00043 <span class="preprocessor">#include &quot;<a class="code" href="usb__protocol_8h.html" title="USB protocol definitions.">usb_protocol.h</a>&quot;</span>
<a name="l00044"></a>00044 <span class="preprocessor">#include &quot;<a class="code" href="udi_8h.html" title="Common API for USB Device Interface.">udi.h</a>&quot;</span>
<a name="l00045"></a>00045 
<a name="l00046"></a>00046 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00047"></a>00047 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {
<a name="l00048"></a>00048 <span class="preprocessor">#endif</span>
<a name="l00049"></a>00049 <span class="preprocessor"></span>
<a name="l00072"></a><a class="code" href="group__udc__desc__group.html#gae086959cec07a2e71ab069e25a51764f">00072</a> <span class="preprocessor">#define  UDC_DESC_STORAGE</span>
<a name="l00073"></a>00073 <span class="preprocessor"></span>        <span class="comment">// Descriptor storage in internal RAM</span>
<a name="l00074"></a>00074 <span class="preprocessor">#if (defined UDC_DATA_USE_HRAM_SUPPORT)</span>
<a name="l00075"></a>00075 <span class="preprocessor"></span><span class="preprocessor">#       if defined(__GNUC__)</span>
<a name="l00076"></a>00076 <span class="preprocessor"></span><span class="preprocessor">#               define UDC_DATA(x)              COMPILER_WORD_ALIGNED __attribute__((__section__(&quot;.data_hram0&quot;)))</span>
<a name="l00077"></a>00077 <span class="preprocessor"></span><span class="preprocessor">#               define UDC_BSS(x)               COMPILER_ALIGNED(x)   __attribute__((__section__(&quot;.bss_hram0&quot;)))</span>
<a name="l00078"></a>00078 <span class="preprocessor"></span><span class="preprocessor">#       elif defined(__ICCAVR32__)</span>
<a name="l00079"></a>00079 <span class="preprocessor"></span><span class="preprocessor">#               define UDC_DATA(x)              COMPILER_ALIGNED(x)   __data32</span>
<a name="l00080"></a>00080 <span class="preprocessor"></span><span class="preprocessor">#               define UDC_BSS(x)               COMPILER_ALIGNED(x)   __data32</span>
<a name="l00081"></a>00081 <span class="preprocessor"></span><span class="preprocessor">#       endif</span>
<a name="l00082"></a>00082 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00083"></a><a class="code" href="group__udc__desc__group.html#ga1659a2f0b429f07a985a8faaa3fb27b1">00083</a> <span class="preprocessor"></span><span class="preprocessor">#       define UDC_DATA(x)              COMPILER_ALIGNED(x)</span>
<a name="l00084"></a><a class="code" href="group__udc__desc__group.html#ga198e5cdf3367aa0b35821417b7ede0b2">00084</a> <span class="preprocessor"></span><span class="preprocessor">#       define UDC_BSS(x)               COMPILER_ALIGNED(x)</span>
<a name="l00085"></a>00085 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00086"></a>00086 <span class="preprocessor"></span>
<a name="l00087"></a>00087 
<a name="l00088"></a>00088 
<a name="l00092"></a><a class="code" href="structudc__config__speed__t.html">00092</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
<a name="l00094"></a><a class="code" href="structudc__config__speed__t.html#a2b2dd8b8091a0c4e9b19989a1779c5af">00094</a>         <a class="code" href="structusb__conf__desc__t.html" title="Standard USB configuration descriptor structure.">usb_conf_desc_t</a> <a class="code" href="group__udc__desc__group.html#gae086959cec07a2e71ab069e25a51764f" title="Defines the memory&#39;s location of USB descriptors.">UDC_DESC_STORAGE</a> *<a class="code" href="structudc__config__speed__t.html#a2b2dd8b8091a0c4e9b19989a1779c5af" title="USB configuration descriptor.">desc</a>;
<a name="l00096"></a><a class="code" href="structudc__config__speed__t.html#a2e343b988012ad9192a133d50eeab703">00096</a>         <a class="code" href="structudi__api__t.html" title="UDI API.">udi_api_t</a> <a class="code" href="group__udc__desc__group.html#gae086959cec07a2e71ab069e25a51764f" title="Defines the memory&#39;s location of USB descriptors.">UDC_DESC_STORAGE</a> *<a class="code" href="group__udc__desc__group.html#gae086959cec07a2e71ab069e25a51764f" title="Defines the memory&#39;s location of USB descriptors.">UDC_DESC_STORAGE</a> * <a class="code" href="structudc__config__speed__t.html#a2e343b988012ad9192a133d50eeab703" title="Array of UDI API pointer.">udi_apis</a>;
<a name="l00097"></a>00097 } <a class="code" href="structudc__config__speed__t.html" title="Configuration descriptor and UDI link for one USB speed.">udc_config_speed_t</a>;
<a name="l00098"></a>00098 
<a name="l00099"></a>00099 
<a name="l00103"></a><a class="code" href="structudc__config__t.html">00103</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
<a name="l00105"></a><a class="code" href="structudc__config__t.html#abbb89807817f4e602e20c6ebdfb26741">00105</a>         <a class="code" href="structusb__dev__desc__t.html" title="Standard USB device descriptor stucture.">usb_dev_desc_t</a> <a class="code" href="group__udc__desc__group.html#gae086959cec07a2e71ab069e25a51764f" title="Defines the memory&#39;s location of USB descriptors.">UDC_DESC_STORAGE</a> *<a class="code" href="structudc__config__t.html#abbb89807817f4e602e20c6ebdfb26741" title="USB device descriptor for low or full speed.">confdev_lsfs</a>;
<a name="l00107"></a><a class="code" href="structudc__config__t.html#a681102302c24cb986cdd7af3bee6d976">00107</a>         <a class="code" href="structudc__config__speed__t.html" title="Configuration descriptor and UDI link for one USB speed.">udc_config_speed_t</a> <a class="code" href="group__udc__desc__group.html#gae086959cec07a2e71ab069e25a51764f" title="Defines the memory&#39;s location of USB descriptors.">UDC_DESC_STORAGE</a> *<a class="code" href="structudc__config__t.html#a681102302c24cb986cdd7af3bee6d976" title="USB configuration descriptor and UDI API pointers for low or full speed.">conf_lsfs</a>;
<a name="l00108"></a>00108 <span class="preprocessor">#ifdef USB_DEVICE_HS_SUPPORT</span>
<a name="l00109"></a>00109 <span class="preprocessor"></span>
<a name="l00110"></a>00110         <a class="code" href="structusb__dev__desc__t.html" title="Standard USB device descriptor stucture.">usb_dev_desc_t</a> <a class="code" href="group__udc__desc__group.html#gae086959cec07a2e71ab069e25a51764f" title="Defines the memory&#39;s location of USB descriptors.">UDC_DESC_STORAGE</a> *confdev_hs;
<a name="l00112"></a>00112         <a class="code" href="structusb__dev__qual__desc__t.html" title="Standard USB device qualifier descriptor structure.">usb_dev_qual_desc_t</a> <a class="code" href="group__udc__desc__group.html#gae086959cec07a2e71ab069e25a51764f" title="Defines the memory&#39;s location of USB descriptors.">UDC_DESC_STORAGE</a> *qualifier;
<a name="l00114"></a>00114         <a class="code" href="structudc__config__speed__t.html" title="Configuration descriptor and UDI link for one USB speed.">udc_config_speed_t</a> <a class="code" href="group__udc__desc__group.html#gae086959cec07a2e71ab069e25a51764f" title="Defines the memory&#39;s location of USB descriptors.">UDC_DESC_STORAGE</a> *conf_hs;
<a name="l00115"></a>00115 <span class="preprocessor">#endif</span>
<a name="l00116"></a>00116 <span class="preprocessor"></span>} <a class="code" href="structudc__config__t.html" title="All information about the USB Device.">udc_config_t</a>;
<a name="l00117"></a>00117 
<a name="l00119"></a>00119 <span class="keyword">extern</span> <a class="code" href="group__udc__desc__group.html#gae086959cec07a2e71ab069e25a51764f" title="Defines the memory&#39;s location of USB descriptors.">UDC_DESC_STORAGE</a> <a class="code" href="structudc__config__t.html" title="All information about the USB Device.">udc_config_t</a> <a class="code" href="group__udi__cdc__group__desc.html#ga40ae5a61fbfa7e289136b2f9fd190217" title="Add all information about USB Device in global structure for UDC.">udc_config</a>;
<a name="l00120"></a>00120 
<a name="l00122"></a>00122 
<a name="l00123"></a>00123 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00124"></a>00124 <span class="preprocessor"></span>}
<a name="l00125"></a>00125 <span class="preprocessor">#endif</span>
<a name="l00126"></a>00126 <span class="preprocessor"></span><span class="preprocessor">#endif // _UDC_DESC_H_</span>
</pre></div></div>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>



<hr class="footer"/><address class="footer"><small>
Generated on Mon Dec 19 2011 21:04:51 for OpenShoe by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.5.1
</small></address>

</body>
</html>
